코드 완성

 

IDEA  Code completion 특징은 당신이 이미 타이프했던 개의 문자를 기초로 하여 삽입된 당신의 코드가 가치 있는 문맥 의존 목록을 제공하여 빠르고 많은 코드를 정확하게 쓰는 것을 돕습니다.  만일 목록이 많은 선택을 가지면, 당신은 그것들을 하나 이상의 추가 문자를 타이프하여 좁힐 있습니다.  당신이 값을 코드 완성 목록으로부터 빼낼 , 완전한 값이 정확하게 삽입되고 캐럿은 다음 편집을 위해 지능적으로 배치되었습니다.
이용할 있는 코드 완성의 3개의 타입이 IDEA 있습니다:

 Basic  (Ctrl + Space)

 Smart Type  (Ctrl + Shift + Space)  

 Class Name  (Ctrl + Alt + Space)  


Code completion 사용하여 당신은 대부분의 경우에 당신의 코드를 컴파일 안되게 만드는, IDEA 제안한 코드의 계정을 가져와야만 한다.


Basic (Ctrl + Space)  


현재의 파일의 가시성의 현재의 범위 내에서 있는 어떤 클래스, 메소드 또는 변수의 이름을 완성합니다.  범위에서 이용할 있는 자바 키워드를 완성합니다.  Basic 완성을 호출하기 위해서, 당신이 캐럿을 당신의 코드를 타이프하는 곳에 위치를 설정하고 그때 Ctrl + Space 누르십시오.  다음 도해는 다른 요소를 위해 Basic  코드 완성을 표시합니다.

variables methods 위해 : 



객체 인스턴스의 members  위해:


클래스 멤버를 위한 완성은 현재의 클래스에서 볼드체와 함께 그것들을 표시합니다. 그리고 보통의 폰트는 파생된(but not overridden) 클래스 멤버를 위해 사용됩니다.



현재 보이는 class  위해:



Java keywords 위해 : 




필드와 변수에 대한 Commonly used names 그들의 타입에 따라 제안됩니다:


당신이 필드 또는 변수가 특정의 prefix 가지는 것을 원하는 때에도 최종 완성은 작동합니다:

 

Smart Type (Ctrl + Shift + Space)  

Java 클래스, 메소드와 변수의 목록을 예상되는 타입의 표현식과 일치하기 위해 필터링합니다.
Smart Type
어느 타입이 기대될 있는 어느 곳에서라도 작동합니다:  복귀 스테이트먼트 등에 가변 이니셜라이저에 할당의 오른쪽에.   개의 타입이 가능할 있었던 경우에, 스마트 타입 완성은 어느 하나가 적용 가능한가(사용 통계에 따라) 추측하려고 노력하고, 룩업 목록에서 타입을 자동적으로 선택합니다.



return 스테이트먼트 이후:



dot 분리자 이후:



또한 new 키워드가 예상되는 타입의 객체 인스턴스를 생성한 이후 그것은 사용될 있습니다.



그때 Ctrl + Shift + Space 누르십시오.



추상 클래스와 인터페이스의 경우에 그들의 상속인은 또한 룩업 목록에 리스트될 것입니다.



 throw new IDEA 메소드 정의에 따라 던져질 있는 모든 예외의 목록을 줍니다.



던져질 있는 개의 예외가 코드 블록 내에서 있을 , IDEA 캐치한 룩업 목록에서 던져지는 예외 만을 제안합니다.  그리고 throws Throwable 확장하고 있는 클래스만이 주어집니다.

Javadoc 
에서 코드 완성도 throws 목록에서 예외에 대해 작동합니다.

예상되는 타입이 인터페이스 타입 또는 추상 클래스 타입이라면, Ctrl + Shift + Space  누르면 익명의 클래스 생성 옵션 뿐만 아니라 인터페이스/추상 클래스 실행과 함께 룩업 항목을 부를 것입니다.



Enter 누르면 선택된 코드를 추가할 것입니다.



만일 팩토리 또는 상수가 예상되는 클래스의 내부에서 정의되면 그것은 또한 Smart Completion룩업 목록에 리스트됩니다.

 

Class Name (Ctrl + Alt + Space)  

현재의 모듈 범위(단지 현재 보여지는 클래스의 이름을 완성하는 Basic Completion 같지 않은) 위치하는 어떤 클래스의 이름을 완성합니다.  선택된 클래스가 이미 임포트 되지 않으면 Class Name완성은 현재의 파일에 적합한 Import statement 자동적으로 추가합니다.  바라는 클래스 이름을 Class Name Completion 작동하게 만들기 위해 타이핑을 시작하십시오.

 


IDEA 다음 우선 순위에 따라 코드 완성 목록에서 번째 선택된 요소를 선택합니다

 1.   증분 계수기는 클래스, 필드와 메소드를 위해 사용됩니다.  바꾸어 말하면 요소는 사용되고 높은 것은 ""입니다.  가장 높은 값이 있는 요소가 보통 선택됩니다. 그리고 각 요소는 그 수식어의 문맥에서 고려됩니다. 예를 들면, 클래스 A가 있습니다. A 메소드, foo  가집니다.  그리고 A 확장하는 클래스 B 있습니다.  IDEA 메소드 A.foo  B.foo 개의 별도 코드 요소로 간주합니다.

 2.   그러나, 선택에 영향을 있는 요소가 룩업 목록에 있습니다.  로컬 변수는 항상 항목 1 요소보다 높은 "" 가지고 있습니다.그리고 만일 개의 로컬 변수가 있으면 그들은 그들의 선언에 역순에서 선택됩니다.

 3.   Keywords  룩업에서 목록에서 나타나지만 그들이 가장 낮은 우선 순위를 가지고 있습니다.